<?php

namespace SGBD\Persistance;

/**
 * Une faussaire pour l'interface iDB qui permets le development de le frontend
 * en parallel avec le development de le backend.
 */
class FakeDB extends DB
{
    public function _getClub($nomClub)
    {
        return array('Nom_Club' => 'Bordeaux 1', 'Gagnes' => '1',
              'Egals' => '5', 'Perdus' => '2');
    }

    public function _getBureauClub($nomClub)
    {
        return array(
            array(
                'Nom' => 'Jakobsson',
                'Prenom' => 'Arvid',
                'Adresse' => '28 rue giner de los rios',
                'Date_Naissance' => '19880112',
                'Numero_Personne' => '123',
                'Role' => 'President'
            ),
            array(
                'Nom' => 'Oussama',
                'Prenom' => 'Farouq',
                'Adresse' => '28 rue giner de los rios',
                'Date_Naissance' => '19880112',
                'Numero_Personne' => '124',
                'Role' => 'Vice-Prez1'
            ),
            array(
                'Nom' => 'Chloe',
                'Prenom' => 'Martet',
                'Adresse' => '28 rue giner de los rios',
                'Date_Naissance' => '19880112',
                'Numero_Personne' => '125',
                'Role' => 'Vice-Prez2'
            ),
        );
    }

    public function _getAllClubs($orderBy, $saison)
    {
        if ($saison == FALSE) {
            return array(
                array('Nom_Club' => 'Bordeaux 1', 'Gagnes' => '1',
                      'Egals' => '5', 'Perdus' => '2'),
                array('Nom_Club' => 'Bordeaux 2', 'Gagnes' => '3',
                      'Egals' => '4', 'Perdus' => '4'),
                array('Nom_Club' => 'Bordeaux 3', 'Gagnes' => '3',
                      'Egals' => '4', 'Perdus' => '4')
            );
        } else if ($saison == array(2011, 2012)) {
            return array(
                array('Nom_Club' => 'Bordeaux 1', 'Gagnes' => '1',
                      'Egals' => '6', 'Perdus' => '2')
            );
        } else {
            return array();
        }
    }

    public function _createClub($nomClub)
    {
        return rand();
    }
    public function _createAdhesion($nomClub,  $numeroPersonne, $role)
    {
        return rand();
    }
    public function _deleteAdhesion($numeroPersonne)
    {
    }
    public function _getAllJoueursParEquipe($numEquipe, $saison)
    {
        if ($numEquipe == 1) {
            return array(
                array(
                    'Nom' => 'Jakobsson',
                    'Prenom' => 'Arvid Basket',
                    'Adresse' => '28 rue giner de los rios',
                    'Date_Naissance' => '19880112',
                    'Numero_Personne' => '123',
                    'Numero_Licence' => '02938402938'
                )
            );
        }
    }
    public function _getJoueur($numeroLicense)
    {
        return array(
            'Nom' => 'Jakobsson',
            'Prenom' => 'Arvid Basket',
            'Adresse' => '28 rue giner de los rios',
            'Date_Naissance' => '19880112',
            'Numero_Personne' => '123',
            'Numero_Licence' => '02938402938',
        );
    }
    public function _getEquipe($numeroEquipe)
    {
        return array(
            'Nom_Equipe' => "Bordeaux 1 Equipe 1",
            'Numero_Equipe' => '1',
            'Nom_Club' => 'Bordeaux 1',
            'Nom_Categorie' => 'Senior'
        );
    }

    public function _getAllEquipes($orderBy, $saison)
    {
        return array(
            array(
                'Nom_Equipe' => "Bordeaux 1 Equipe 1",
                'Numero_Equipe' => '1',
                'Nom_Club' => 'Bordeaux 1',
                'Nom_Categorie' => 'Senior'
            ),
            array(
                'Nom_Equipe' => "Bordeaux 1 Equipe 2",
                'Numero_Equipe' => '2',
                'Nom_Club' => 'Bordeaux 1',
                'Nom_Categorie' => 'Junior'
            ),
            array(
                'Nom_Equipe' => "Bordeaux 2 Equipe 1",
                'Numero_Equipe' => '3',
                'Nom_Club' => 'Bordeaux 2',
                'Nom_Categorie' => 'Senior'
            ),
            array(
                'Nom_Equipe' => "Bordeaux 2 Equipe 2",
                'Numero_Equipe' => '4',
                'Nom_Club' => 'Bordeaux 2',
                'Nom_Categorie' => 'Junior'
            )
        );
    }

    public function _getAllEquipesDeClub($nomClub)
    {
        if ($nomClub == 'Bordeaux 1') {
            return array(
                array(
                    'Nom_Equipe' => "Bordeaux 1 Equipe 1",
                    'Numero_Equipe' => '1',
                    'Nom_Club' => 'Bordeaux 1',
                    'Nom_Categorie' => 'Senior'
                ),
                array(
                    'Nom_Equipe' => "Bordeaux 1 Equipe 2",
                    'Numero_Equipe' => '2',
                    'Nom_Club' => 'Bordeaux 1',
                    'Nom_Categorie' => 'Junior'
                )
            );
        } else if ($nomClub == 'Bordeaux 2') {
            return array(
                array(
                    'Nom_Equipe' => "Bordeaux 2 Equipe 1",
                    'Numero_Equipe' => '3',
                    'Nom_Club' => 'Bordeaux 2',
                    'Nom_Categorie' => 'Senior'
                ),
                array(
                    'Nom_Equipe' => "Bordeaux 2 Equipe 2",
                    'Numero_Equipe' => '4',
                    'Nom_Club' => 'Bordeaux 2',
                    'Nom_Categorie' => 'Junior'
                )
            );
        }
    }
    public function _getAllPersonnes($orderBy)
    {
        return array(
            array(
                'Nom' => 'Jakobsson',
                'Prenom' => 'Arvid',
                'Adresse' => '123 Rue asdf zxcv',
                'Date_Naissance' => '1945-01-12',
                'Numero_Personne' => '123'
            ),
            array(
                'Nom' => 'Martet',
                'Prenom' => 'Chloe',
                'Adresse' => '345 Cours asdf zxcv',
                'Date_Naissance' => '1954-01-12',
                'Numero_Personne' => '124'
            ),
            array(
                'Nom' => 'Oussama',
                'Prenom' => 'Farouq',
                'Adresse' => '789 Cours asdf zxcv',
                'Date_Naissance' => '1958-01-24',
                'Numero_Personne' => '125'
            ),
        );
    }

    public function _createPersonne(
        $nom, $prenom, $adresse, $dateNaissance
    )
    {
        return rand();
    }

    public function _createJoueur(
        $numeroLicense, $nom, $prenom, $adresse, $dateNaissance, $numeroPersonne
    )
    {
        return rand();
    }
    public function _ajoutJoueurEnEquipe($numeroLicense, $numeroEquipe)
    {
        return rand();
    }
    public function _getAllCategories()
    {
        return array(
            array('Nom_Categorie' => 'Presque mort'),
            array('Nom_Categorie' => 'Tres vieux'),
            array('Nom_Categorie' => 'Senior'),
            array('Nom_Categorie' => 'Junior')
        );
    }
    public function _createEquipe(
        $nomClub, $categorie, $nomEquipe
    )
    {
        return rand();
    }
    public function _deleteClub($numeroPersonne)
    {
    }
    public function _deleteJoueur($numeroPersonne)
    {
    }
    public function _updateJoueur($numeroLicense, $numeroPersonne, $nom, $prenom, $adresse, $dateNaissance)
    {
        return TRUE;
    }

    public function deletePersonne($numeroPersonne)
    {
    }

    public function _getPersonne($numeroPersonne) {
        return array(
            'Nom' => 'Jakobsson',
            'Prenom' => 'Arvid Basket',
            'Adresse' => '28 rue giner de los rios',
            'Date_Naissance' => '19880112',
            'Numero_Personne' => '123'
        );
    }
}